package day04;
import java.util.Scanner;


  /*
    1. CommandBySwitch命令解析程序：

    要求：接收用户输入的命令，依据命令做不同的操作


2. Guessing猜数字之while版：

   要求：随机生成一个数，由用户来猜，猜不对则反复猜，并给出大小提示，猜对的则结束，用while来实现。
     */

public class Day04StandardExercise {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        System.out.println("请选择功能：1：存款 2：取款 3：查询余额 4：退卡");
        int num=scanner.nextInt();
        switch (num){
            case 1:
                System.out.println("存款业务处理中");
                break;
            case 2:
                System.out.println("取款业务处理中");
                break;
            case 3:
                System.out.println("查询余额");
                break;
            case 4:
                System.out.println("退卡");
                break;
            default:
                System.out.println("输入错误");
        }
        //要求：随机生成一个数，由用户来猜，猜不对则反复猜，并给出大小提示，猜对的则结束，用while来实现。
        //900 小，1000 大 980 猜对了
        System.out.println("猜吧");
        int random=(int)(Math.random()*1000+1);
          /*
        Math.random()取值范围0.000...-------------0.999999999999
        *1000             0.000---------------999.9999999999
        +1                 1.00000------------1000.99999999
        int(Math.random()*1000+1) 1------------1000
         */
        System.out.println(random);//系统随机生成的数
        int gusses=scanner.nextInt();//要素1：初始化循环变量
        while(gusses!=random){//要素2：循环条件判断
            if (gusses>random){
                System.out.println("猜大了");
            }else{
                System.out.println("猜小了");
            }
            gusses=scanner.nextInt();//要素3：循环变量改变
        }
        System.out.println("恭喜你，猜对了");

        //4. for循环：输出5次"行动是成功的阶梯"、输出9的乘法表(1到9、1/3/5/7/9、9到1)
        for (int times=0;times<5;times++){
            System.out.println("行动是成功的阶梯");
        }
        for (int multiplier=1;multiplier<=9;multiplier++){
            System.out.println(multiplier+"*9="+multiplier*9);
        }
        for (int num1=1;num1<=9;num1+=2){
            System.out.println(num1+"*9="+num1*9);
        }
        for (int num2=9;num2<=1;num2--){
            System.out.println(num2+"*9="+num2*9);
        }

        //3. Guessing猜数字之do...while版：随机生成一个数，由用户来猜，猜不对则反复猜，并给出大小提示，猜对的则结束，用do...while来实现。
        int random1=(int)(Math.random()*1000+1);
        System.out.println(random1);//作弊
        int gussess1;//变量的作用域，从变量的声明开始，到包含它最近的大括号结束，所以如果声明在do里面，while里面的变量使用无效
        do {
            System.out.println("猜吧");
            gussess1=scanner.nextInt();//要素1：初始化循环变量+要素3：循环变量的改变
            if (gussess1>random1){
                System.out.println("猜大了");
            }else if (gussess1<random1){
                System.out.println("猜小了");
            }else{
                System.out.println("恭喜你，猜对了");
            }
        }while(gussess1!=random1);//2 疑问：为啥不能结束；









    }



}
